]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
status: Set more descriptive labels for quick toggle menu buttons
authorLukáš Tyrychtr <ltyrycht@redhat.com>
Tue, 5 Aug 2025 12:44:55 +0000 (14:44 +0200)
committerMarge Bot <marge-bot@gnome.org>
Thu, 14 Aug 2025 09:17:44 +0000 (09:17 +0000)
Make it clearer to screen reader users what menu buttons do by adding
descriptive labels that indicate opening menus for specific toggles.

Closes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/8546.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3828>

js/ui/status/backlight.js
js/ui/status/bluetooth.js
js/ui/status/network.js
js/ui/status/powerProfiles.js

index 3768da00d187c7625971a3a078fbb738636bd5dd..29a4601ebd790a7f6352576d6c53692b055c1a19 100644 (file)
@@ -161,6 +161,7 @@ class KeyboardBrightnessToggle extends QuickMenuToggle {
         super._init({
             title: _('Keyboard'),
             iconName: 'display-brightness-symbolic',
+            menuButtonAccessibleName: _('Open keyboard brightness menu'),
         });
 
         this._proxy = new BrightnessProxy(Gio.DBus.session, BUS_NAME, OBJECT_PATH,
index 90e7e9f4be8483eae1bee2391c6e2c3311c4d8a1..b8a5ea1d45fd1741f2fbb8e5ffce8eed37e00abb 100644 (file)
@@ -273,7 +273,10 @@ class BluetoothDeviceItem extends PopupMenu.PopupBaseMenuItem {
 const BluetoothToggle = GObject.registerClass(
 class BluetoothToggle extends QuickMenuToggle {
     _init(client) {
-        super._init({title: _('Bluetooth')});
+        super._init({
+            title: _('Bluetooth'),
+            menuButtonAccessibleName: _('Open Bluetooth menu'),
+        });
 
         this.menu.setHeader('bluetooth-active-symbolic', _('Bluetooth'));
 
index 466ec615cac1d3055dd74caac6973b06477020bc..ea6026da2c7c267cee467e228a96d563490459e1 100644 (file)
@@ -1542,6 +1542,7 @@ class NMVpnToggle extends NMToggle {
         super();
 
         this.menu.setHeader('network-vpn-symbolic', _('VPN'));
+        this.menuButtonAccessibleName = _('Open VPN menu');
         this.menu.addSettingsAction(_('VPN Settings'),
             'gnome-network-panel.desktop');
     }
@@ -1803,6 +1804,7 @@ class NMWirelessToggle extends NMDeviceToggle {
         });
 
         this.menu.setHeader('network-wireless-symbolic', _('Wi–Fi'));
+        this.menuButtonAccessibleName = _('Open Wi–Fi menu');
         this.menu.addHeaderSuffix(this._scanningSpinner);
         this.menu.addSettingsAction(_('All Networks'),
             'gnome-wifi-panel.desktop');
@@ -1902,6 +1904,7 @@ class NMWiredToggle extends NMDeviceToggle {
         super(NM.DeviceType.ETHERNET);
 
         this.menu.setHeader('network-wired-symbolic', _('Wired Connections'));
+        this.menuButtonAccessibleName = _('Open wired connections menu');
         this.menu.addSettingsAction(_('Wired Settings'),
             'gnome-network-panel.desktop');
     }
@@ -1917,6 +1920,7 @@ class NMBluetoothToggle extends NMDeviceToggle {
         super(NM.DeviceType.BT);
 
         this.menu.setHeader('network-cellular-symbolic', _('Bluetooth Tethers'));
+        this.menuButtonAccessibleName = _('Open Bluetooth tethers menu');
         this.menu.addSettingsAction(_('Bluetooth Settings'),
             'gnome-network-panel.desktop');
     }
@@ -1937,6 +1941,7 @@ class NMModemToggle extends NMDeviceToggle {
         super(NM.DeviceType.MODEM);
 
         this.menu.setHeader('network-cellular-symbolic', _('Mobile Connections'));
+        this.menuButtonAccessibleName = _('Open mobile connections menu');
 
         const settingsLabel = _('Mobile Broadband Settings');
         this._wwanSettings = this.menu.addSettingsAction(settingsLabel,
index 3145c23751f8729756cb5e502e21ebdaa4fad3f6..31877209c1fcb10d45a8647dd71d513abec36cdd 100644 (file)
@@ -41,7 +41,10 @@ const LAST_PROFILE_KEY = 'last-selected-power-profile';
 const PowerProfilesToggle = GObject.registerClass(
 class PowerProfilesToggle extends QuickMenuToggle {
     _init() {
-        super._init({title: _('Power Mode')});
+        super._init({
+            title: _('Power Mode'),
+            menuButtonAccessibleName: _('Open power profiles menu'),
+        });
 
         this._profileItems = new Map();